#ifndef _BSP_MQTT_H
#define _BSP_MQTT_H
#include <stdio.h>
#include <stdint.h>
#include <stddef.h>




typedef struct 
{
    uint8_t send_type;
    void *data;
}mqtt_tx_msg_t;

typedef struct 
{
    char *topic;
    char *data;
    int datalen;
}mqtt_rx_msg_t;

extern uint16_t mqtt_keepalive_count;
void mqtt_init(void);
void http_ota_task(void *pvParameter);
void mqtt_send(uint8_t send_type, void *data);
void mqtt_report_json_d2u_send(void *send_data);
void mqtt_task(void *pvParameters);
void mqtt_registration_json_send(void);
void mqtt_ack_json_send(int msg_id_type, char* buffer);
void mqtt_parse_rx_u2d_data(char *buffer);
void mqtt_parse_rx_s2d_data(char *buffer);
void mqtt_req_firm_ver(void);
#endif
